Page Caching এবং Data Caching Techniques

Microsoft Technologies - এএসপি ডট নেট ওয়েব (ASP.Net WP) Performance Optimization Techniques |
196
196

Caching হলো একটি প্রযুক্তি যা ডেটা বা রেসপন্সগুলিকে স্টোর করে রাখে, যাতে পুনরায় একই রিকোয়েস্ট আসলে দ্রুত রেসপন্স দেওয়া যায়। এটি ওয়েব অ্যাপ্লিকেশনের পারফরম্যান্স এবং স্কেলেবিলিটি বাড়ানোর জন্য ব্যবহৃত হয়। ASP.NET Web Forms এ দুটি গুরুত্বপূর্ণ ধরনের কaching রয়েছে: Page Caching এবং Data Caching

এগুলির মাধ্যমে আপনি ওয়েব অ্যাপ্লিকেশনের কর্মক্ষমতা বাড়াতে পারেন এবং সার্ভারের লোড কমাতে পারেন।


Page Caching

Page Caching (অথবা Full Page Caching) হলো একটি কৌশল, যেখানে সম্পূর্ণ ওয়েব পেজের আউটপুট কপি স্টোর করা হয়, যাতে পরবর্তী রিকোয়েস্টগুলোর জন্য সেই পেজটি আবার তৈরি না করতে হয়। এটি সাধারণত ডায়নামিক কন্টেন্টের ক্ষেত্রে ব্যবহার করা হয়, যাতে সার্ভারকে প্রতিবার পেজ রেন্ডার করতে না হয় এবং দ্রুত ফলাফল পাওয়া যায়।

ASP.NET Web Forms এ Page Caching ব্যবহার করার জন্য, OutputCache ডিরেকটিভ ব্যবহার করা হয়।


Page Caching ব্যবহার করা

OutputCache ডিরেকটিভের মাধ্যমে পেজের পুরো আউটপুট ক্যাশ করা যায়। নিচের কোডটি দেখুন:

<%@ OutputCache Duration="60" VaryByParam="None" %>

এখানে:

  • Duration: এই পেজটি কত সময় ধরে ক্যাশ থাকবে, সেটা নির্ধারণ করে। উপরের উদাহরণে এটি ৬০ সেকেন্ড।
  • VaryByParam: এটি ভ্যারিয়েবল প্যারামিটার দিয়ে পেজটিকে ক্যাশ করার ক্ষেত্রে পার্থক্য তৈরি করে। এখানে যদি "None" সেট করা থাকে, তাহলে পেজটি প্যারামিটার ভিন্ন না হওয়া পর্যন্ত ক্যাশ থাকবে।

OutputCache ডিরেকটিভের বিভিন্ন প্যারামিটার রয়েছে, যা পেজ ক্যাশিংকে কাস্টমাইজ করতে সাহায্য করে:

  • VaryByParam: পেজের ভিন্ন ভিন্ন প্যারামিটার (যেমন: query string, form data) দিয়ে ক্যাশিং ভ্যারিয়েশন তৈরি করতে সাহায্য করে।
  • VaryByCustom: কাস্টম ভ্যারিয়েশন, যেমন ব্রাউজার টাইপ বা জিওলোকেশন অনুযায়ী ক্যাশিং পরিবর্তন করতে পারে।
  • Location: ক্যাশের অবস্থান নির্ধারণ করে (যেমন: সার্ভার, ক্লায়েন্ট, বা প্রোপ্রক্সি সার্ভার)।

Page Caching এর উদাহরণ

<%@ OutputCache Duration="120" VaryByParam="id" %>

এখানে id প্যারামিটারটি ভিত্তিতে আলাদা আলাদা পেজ ক্যাশ হবে। অর্থাৎ, যদি id প্যারামিটার পরিবর্তিত হয়, তবে নতুন পেজ ক্যাশ হবে।


Data Caching

Data Caching হলো একটি কৌশল, যেখানে নির্দিষ্ট ডেটা বা ভ্যালু স্টোর করা হয়, যেমন একটি ডেটাবেস কুয়েরি বা ওয়েব সার্ভিস থেকে প্রাপ্ত তথ্য, যাতে সেটি পরে দ্রুত অ্যাক্সেস করা যায়। এটি পুরো পেজ ক্যাশিংয়ের তুলনায় আরও সুনির্দিষ্টভাবে ডেটা ক্যাশ করে, এবং অ্যাপ্লিকেশন প্রোগ্রামেবল ডেটা দ্রুত রিটার্ন করতে সক্ষম হয়।

ASP.NET Web Forms এ Data Caching করার জন্য Cache অবজেক্ট ব্যবহার করা হয়।


Data Caching ব্যবহার করা

ডেটা ক্যাশিংয়ের মাধ্যমে, আপনি নির্দিষ্ট ডেটা যেমন ডেটাবেস কুয়েরি রেজাল্ট বা যেকোনো API রেসপন্স ক্যাশ করতে পারেন।

// ডেটা ক্যাশ করা
Cache["UserData"] = GetUserDataFromDatabase();

এখানে, Cache["UserData"] এ ডেটাবেস থেকে প্রাপ্ত তথ্য রাখা হচ্ছে। এরপর এই ক্যাশড ডেটা পুনরায় ব্যবহার করা যাবে।


Data Caching এ Expiration Policy

ডেটা ক্যাশ করার সময়, আপনি একটি Expiration Policy নির্ধারণ করতে পারেন, যাতে ক্যাশড ডেটা একটি নির্দিষ্ট সময় পরে অপ্রচলিত (expired) হয়ে যায়।

Cache["UserData"] = GetUserDataFromDatabase();
Cache["UserData"].AbsoluteExpiration = DateTime.Now.AddMinutes(10);

এখানে, AbsoluteExpiration সেট করা হয়েছে যাতে ১০ মিনিট পর ডেটা অপ্রচলিত হয়ে যায় এবং নতুন তথ্য লোড করতে হবে।


Data Caching Techniques

Data Caching এ বিভিন্ন কৌশল রয়েছে, যা আপনি প্রয়োজনে ব্যবহার করতে পারেন:

  1. Absolute Expiration: নির্দিষ্ট সময় পরে ক্যাশ ডেটা মুছে ফেলা হয়।
  2. Sliding Expiration: একটি সময় সীমা নির্ধারণ করা হয়, এবং নির্দিষ্ট সময় পর্যন্ত কোনো রিকোয়েস্ট না আসলে ক্যাশ ডেটা মুছে ফেলা হয়।

    Cache["UserData"] = GetUserDataFromDatabase();
    Cache["UserData"].SlidingExpiration = TimeSpan.FromMinutes(5);
    
  3. Priority-Based Expiration: ক্যাশের ডেটার প্রাধান্য নির্ধারণ করা হয়, যাতে কম গুরুত্বপূর্ণ ডেটা আগে মুছে ফেলা হয়।

    Cache["UserData"] = GetUserDataFromDatabase();
    Cache["UserData"].Priority = CacheItemPriority.Low;
    

Page Caching এবং Data Caching এর মধ্যে পার্থক্য

বিষয়Page CachingData Caching
ক্যাশিংয়ের ধরনসম্পূর্ণ ওয়েব পেজের আউটপুট ক্যাশ করা হয়।নির্দিষ্ট ডেটা (যেমন, ডেটাবেস কুয়েরি) ক্যাশ করা হয়।
স্টোরেজসার্ভারে বা ক্লায়েন্টে পুরো পেজ সংরক্ষিত হয়।শুধু ডেটা সংরক্ষিত হয়, যেমন কুয়েরি রেজাল্ট।
ব্যবহারডায়নামিক পেজের রেন্ডারিং সময় কমানোর জন্য।সার্ভার লোড কমানোর জন্য এবং ডেটার পুনরায় অ্যাক্সেস দ্রুত করার জন্য।
অপ্টিমাইজেশনসম্পূর্ণ পেজ রেন্ডারিং দ্রুত করা হয়।নির্দিষ্ট ডেটা দ্রুত পেতে সহায়তা করে।

সারাংশ

Page Caching এবং Data Caching দুটি গুরুত্বপূর্ণ কৌশল যা ওয়েব অ্যাপ্লিকেশনের পারফরম্যান্স বৃদ্ধি করে। Page Caching পুরো পেজের আউটপুট ক্যাশ করে, যা একই পেজের জন্য বারবার রেন্ডারিং কমায় এবং দ্রুত ফলাফল দেয়। অন্যদিকে, Data Caching নির্দিষ্ট ডেটা সংরক্ষণ করে এবং তার অ্যাক্সেস দ্রুত করে, যেমন ডেটাবেস কুয়েরি রেজাল্ট। সঠিকভাবে ক্যাশিং ব্যবহার করলে ওয়েব অ্যাপ্লিকেশনের পারফরম্যান্স এবং স্কেলেবিলিটি উল্লেখযোগ্যভাবে বৃদ্ধি পায়।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion